package com.ncmmall.domain.business.distribution;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * 分销商提现支付记录
 *
 * @author likaikai
 * @date 2020-09-02 16:24:25
 */
@Entity
@Table(name = "distributor_withdraw_pay_record")
@Access(AccessType.FIELD)
@Getter
@Setter
public class DistributorWithdrawPayRecord {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private long id;

    /**
     * 支付凭证流水号
     */
    private String recordNo;

    /**
     * 分销商
     */
    @JsonIgnore
    @OneToOne
    private Distributor distributor;

    /**
     * 支付金额
     */
    private double payMoney;

    /**
     * 支付方式
     * 1、微信
     * 2、银行卡
     */
    private int payType;

    /**
     * 银行卡支付凭证
     */
    private String image;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Timestamp createTime;

    /**
     * 支付成功时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Timestamp payTime;

    /**
     * 商户订单号(唯一)
     */
    private String partnerTradeNo;

    /**
     * 银行名称
     */
    private String bankName;

    /**
     * 银行支行
     */
    private String bankSubBranch;

    /**
     * 银行卡号
     */
    private String bankCardNo;

    /**
     * 微信付款单号
     */
    private String paymentNo;

    /**
     * 1、支付中
     * 2、支付成功
     * 3、支付失败
     */
    private int status;

    /**
     * 失败原因
     */
    private String note;

}
